Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

IMAP Mail Server (incoming):
User Name: {username}@illinois.edu
Server Name: outlook.office365.com
Server Port: 993
Connection security: SSL/TLS
Authentication method: NormalOAuth2
password
SMTP Mail Server (outgoing):
User Name: {username}@illinois.edu
Server Name: outlook.office365.com
Server Port: 587
Connection security: STARTTLS
Authentication method: Normal passwordOAuth2

Microsoft Outlook Exchange Calendar

...

Add a new VPN with gateway sslvpn.ncsa.illinois.edu and protocol "Cisco AnyConnect". The defaults for the rest are fine.


(2024/03/16 update) Enable the VPN and choose the group "1-ncsa-

...

cilogon-default".

...

Image Added

Authenticate using the standard web-based method that should load within the VPN window.

Image Added


Telephony and Videoconferencing

...

Zoom is a Videoconferencing application with Linux desktop clients available. On a fresh Ubuntu 22.04 LTS installation, you may be lacking some dependencies. Use

  apt install zoom_amd64.deb  

to install the dependencies along with the Debian package. Otherwise, if you use dpkg  you will likely need to run the following to install dependencies:

  apt install libgl1-mesa-glx libegl1-mesa libxcb-xtest0 libxcb-xinerama0 
dpkg -i zoom_amd64.deb

After installing the client, select single-sign-on (SSO) and use address illinois.zoom.us. See https://answers.uillinois.edu/illinois/page.php?id=91801 for more details. You do need to grant access to the app to access your basic profile info. You do not need to grant access to your entire mailbox in a subsequent dialog.

Occasionally you may experience an issue (as of version 5.2) where the interface font size and controls are sometimes way too big. You can fix this by setting the autoScale=false in the $HOME/.config/zoomus.conf config file.

Skype for Business

There is no Skype for Business desktop client for Linux. See https://docs.microsoft.com/en-us/office365/servicedescriptions/skype-for-business-online-service-description/skype-for-business-online-features.

...

The official backup solution is CrashPlan. After downloading the installation file from https://crashplan.ncsa.illinois.edu:4285/console/#/app-downloads and extracting the contents, run ./install.sh to install for your user account after installing prerequisites as shown below. There is typically no need to run this as root unless you have specific needs to backup file outside your home folder.

The end of the installation process shows messages like

# Needed after fresh install of Ubuntu 22.04 : 
sudo apt-get install libgconf-2-4
./install.sh -u $USER -x $HOME/.local/bin/crashplan
# Running as user means the installer cannot increase file system watchers on its own:
echo 'fs.inotify.max_user_watches=1048576' > /etc/sysctl.conf
sudo sysctl -p /etc/sysctl.conf
  
Important directories:
Installation:
$USER/crashplan
Logs:
$USER/crashplan/log
Default archive location:
$USER/crashplan/manifest
Readme:
$USER/crashplan/doc
Start Scripts:
$USER/crashplan/bin/CrashPlanEngine start|stop
$USER/crashplan/bin/CrashPlanDesktop
Would you like to start CrashPlanDesktop? (y/n) [y]
To start the Desktop UI:
$USER/crashplan/bin/CrashPlanDesktop
Installation is complete. Thank you for installing Code42 CrashPlan.

Add an automatic startup script when you login by using the graphical Startup Applications tool or by creating the autostart file on the command line like so:

$ cat <<EOF > $HOME~/.config/autostart/CrashPlanEngine.desktop
service.sh.desktop 
[Desktop Entry]
Type=Application
Exec=$HOME/.local/bin/crashplan/bin/CrashPlanEngineservice.sh start
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_US]=CrashPlan Engine
Name=CrashPlan Engine
Comment[en_US]=CrashPlan Engine service
Comment=CrashPlan Engine EOF service

Copy the desktop file to your applications folder to enable convenient launch of the desktop app. You may need to restart the desktop after creating this file by pressing ALT+F2 and executing the command "restart".

$ cat ~/.local/share/applications/code42.desktop 
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=Code42
Categories=Utility;
Comment=Code42 Desktop
Comment[en_CA]=Code42 Desktop
Exec=$HOME/.local/bin/crashplan/bin/desktop.sh
Icon=$HOME/.local/bin/crashplan/bin/icon_app.png
Hidden=false
Terminal=false
Type=Application

File sharing and sync

Unfortunately there are no official desktop sync clients available for Linux for any of the standard UofI cloud file storage options such as Box and Microsoft OneDrive.

...

Create a startup application. Make it graphically by launching the Startup Application app or create the shortcut file:

  
cat <<EOF > $HOME/.config/autostart/syncthing.desktop
[Desktop Entry]
Type=Application
Exec=/usr/bin/syncthing -no-browser -home="$HOME/.config/syncthing"
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_US]=Syncthing
Name=Syncthing
Comment[en_US]=Syncthing launcher
Comment=Syncthing launcher
EOF

...

Open http://localhost:8384 to access the Syncthing GUI so you can view its status and configure shares.

Docking

...

stations

Toshiba "dynadock" 

The Toshiba "dynadock" is a USB 3.0 based docking station that works with Ubuntu with the installation of an additional DisplayLink driver package. This package is easily installed by extracting the downloaded files and running a single command. It supports two external monitors as well as a keyboard, mouse, and additional peripherals. To uninstall, run sudo displaylink-installer uninstall .

Warning: On some laptops, you may find that enabling NumLock via the external keyboard interferes with the functionality of the laptop keyboard, even when the dock is disconnected.

...

Warning: On Ubuntu 19.10 you might find that the OS crashes when the dock is disconnected. You can use the command below to kill the DisplayLink process prior to disconnecting the dock to prevent this. # Execute in bash sudo kill $(ps ax | grep /opt/displaylink/DisplayLinkManager | head -n 1 | cut -f1 -d' ')

Dell WD19 TB dock

If you have problems with the audio output and microphone input changing to the dock devices you do not want when you plug in, follow the instructions in this helpful repo. There is also a helpful answer here about using pavucontrol to control what sound devices are active and how they are configured. I had luck with this utility after the sound device switcher describe below inexplicably stopped working around Summer 2024 (6.5.0-41-generic #41~22.04.2-Ubuntu).

README.md

  # DellDockAudio
Forces pulseaudio sound device switch via script when docking station detected. Tested on Ubuntu 20.04 only.
## Why? I have a Dell WD19 dock and a Latitude 5580 runing Ubuntu 20.04. When I plug my dock in to my laptop, it switches sound output to the dock's headphone jack rather than the dock's line-out jack. If I change the sound output device in settings, it will work fine until I unplug the dock. It "forgets" my choice when I plug it back in. ## Info needed for this script to work If you have the same issue as I described above, there's some info you'll need in order to customize the included files to work with your hardware. Example output below is cleaned up to only show the relevant needed info... 1. Your Username and UID: ``` echo $USER johnsmith echo $UID 9999 ``` 2. Sound Device names (Set the desired sound devices in the GUI before running this command): ``` pacmd stat Default sink name: alsa_output.usb-Generic_USB_Audio_200901010001-00.HiFi__hw_Dock_1__sink Default source name: alsa_input.usb-Generic_USB_Audio_200901010001-00.HiFi__hw_Dock__source ``` 3. Hardware ID of the docking unit: ``` lsusb Bus 002 Device 005: ID 0bda:0487 Realtek Semiconductor Corp. Dell dock ``` If your dock isn't as easy to find as the example above, run the command with and without the dock plugged in and compare the devices listed to determine the correct device. ## Customizing the rules file In step 3 above, the example device listed has a vendor ID of "0bda", and a product ID of "0487". Use the values of your dock ID and replace these values in the `docksound.rules` file. ## Customizing the script file Edit `docksound.sh` with the info you gathered in steps 1 and 2, replacing the values **within the quotes** of the following variables: ``` SINK_NAME corresponds to "Default sink name" SOURCE_NAME corresponds to "Default source name" USERNAME corresponds to "$USER" USERID corresponds to "$UID" ``` ## Putting the files in the right place You will need root access to put the files where they need to go. The script will be run as root. You may need to `chmod +x docksound.sh` to make it executable. Place `docksound.rules` in `/etc/udev/rules.d/` Place `docksound.sh` in `/root/`. If you want to put `docksound.sh` somewhere else, you'll have to change the path in `docksound.rules` to point th the right location. ## Misc You can `tail -f /tmp/DockPlugEvent.log` to watch detection happen. When I plug my dock in it gets detected multiple times, which is why the script checks if the desired sound devices are already active before switching. Each detection fires an instance of the script...

docksound.rules

    ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="0487", ACTION=="add", RUN+="/root/docksound.sh"

docksound.sh

#!/bin/bash
# Define Variables
SINK_NAME='alsa_output.usb-Generic_USB_Audio_200901010001-00.HiFi__hw_Dock_1__sink'
SOURCE_NAME='alsa_input.pci-0000_00_1f.3.analog-stereo'
USERNAME=andrew
USERID=1000
PID=$(echo $$)

# Log dock detection
echo "$(date) - PID:$PID Dock detected" >> /tmp/DockPlugEvent.log

# Terminate script if an instance is already running
#echo $PID
ps aux | grep 'docksound.sh' | grep -v -e 'grep' -e "$PID"
if [[ $? -gt 0 ]]
then
echo "$(date) - PID:$PID No other instance detected, proceeding" >> /tmp/DockPlugEvent.log
else
echo "$(date) - PID:$PID Another instance detected, exiting." >> /tmp/DockPlugEvent.log
exit 0
fi

export PULSE_RUNTIME_PATH="/run/user/$USERID/pulse/"

# Wait for things to settle after dock is plugged in
sleep 2

# Check to see if desired sound devices are already set, and EXIT without changing IF TRUE
sudo -u $USERNAME -E pacmd stat | grep $SINK_NAME &&
sudo -u $USERNAME -E pacmd stat | grep $SOURCE_NAME &&
echo "$(date) - PID:$PID Desired Sound device already active, exiting" >> /tmp/DockPlugEvent.log &&
exit 0

# Change sound Source and Sink to the Docking Station sound device if NOT already set
echo "$(date) - PID:$PID Firing Sound device switch" >> /tmp/DockPlugEvent.log
sudo -u $USERNAME -E pacmd set-default-source "$SOURCE_NAME"
sudo -u $USERNAME -E pacmd set-default-sink "$SINK_NAME"
echo "$(date) - PID:$PID Fired Sound device switch" >> /tmp/DockPlugEvent.log

Development environment and apps

OpenLens

Slightly adapted this article about how to compile OpenLens from source code:

## Install NVM
sudo apt-get install -y curl g++ make tar
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

## Download Lens Desktop Core ("OpenLens")
curl -sL -o openlens.tgz https://github.com/lensapp/lens/archive/refs/tags/v6.5.2.tar.gz
tar xf ./openlens.tgz
mv ./lens-6.5.2 ./lens
cd lens/

## Update NPM and then use v16
nvm install-latest-npm
nvm install 16 && nvm use 16 && npm install -g yarn

## Install dependencies and build the app
npm install
npm run build:app

## Install the app
sudo apt install open-lens/dist/OpenLens-6.5.2.amd64.deb

Install the OpenLens Node/Pod Menu Extension using the File → Extensions menu.

Printing

The method for adding a network printer is regrettably still not straightforward as of Ubuntu 22.04. The steps below illustrate how I added a networked Ricoh MP 4055 printer:

  1. Find the IP address of the printer by navigating through its menu system. This path is roughly User Tools > System Settings > Interface Settings > Machine IP Address (press button to see actual address)
  2. Open Printers in the Ubuntu (or equivalent Gnome desktop) system settings. Press the Additional Printer Settings. DO NOT press the Add a Printer button!
    • Image Added
  3. In the small dialog that appears press Add.
    • Image Added
  4. Select LPD network printer as shown, entering the IP address of the printer.
    • Image Added
  5. Choose the make and model, then continue the dialogs until the printer is ready.
    • Image Added
    • Image Added
    • Image Added Image Added
  6. Print a test page.