Printer Setup Utility for CS at Aarhus University

To ease the set-up of the printers available for student use at the Department of Computer Science at Aarhus University, I have written a small utility. The utility guides the user through the registration of the printers on the user's computer using a friendly terminal user interface.

Installation

macOS

  1. Install dependencies (using Homebrew)
  2. Download and extract the source code available from here
  3. Run the program using either bin/csau_printers or ruby lib/setup.rb.

Debian-based Linux (Using repository)

  1. Installation on Debian can be completed by adding my personal repository and installing the package csau-printers.
  2. Run the program using csau_printers with appropriate privileges (must likely root privileges).

Linux

  1. Install dependencies
  2. Download and extract the source code available from here
  3. Run the program using either bin/csau_printers or ruby lib/setup.rb.

Dependencies

  • Ruby
  • CUPS
    • Debian: cups for basic functionality, task-print-server for full print server
  • lpadmin/lpstat
    • Debian: cups-client package
  • SMB support for CUPS
    • Debian: smbclient package
  • dialog

FAQ

  • Error message: lpadmin: Bad device-uri scheme "smb".
    • Support for the SMB client for CUPS is not installed. Install smbclient on Debian-based systems.
  • Permission denied or something of the like
    • If using macOS, make sure that your user is an administrator for the system.
    • If using Linux, make sure that your user has access to manage printers. This permission is typically given to members of the sys and lp groups. Remember that group membership is only evalutated on login, i.e. if you add your user to a group, remember to re-login.
  • Not able to resolve printer URI
    • Note that your system's DNS resolver has to be able to resolve print.uni.au.dk. to make your print server able to contact the printers. Aarhus University's internal DNS settings distributed by DHCP are able to do this correctly.

Screenshots

Screenshot of the csau-printers utility

Screenshot of the utility in action