Alternative and corresponding configuration tools to YaST modules

Avahi is generally installed and enabled by default (for desktop users anyway). Check systemctl status avahi-daemon for yourself. However, it won’t work unless the firewall is allowing mDNS traffic. It does more than just find printers advertising themselves on the network. It provides zero-configuration service discovery on a local network, letting devices automatically find and advertise services like file shares, media servers, SSH, VNC, and printers without manual setup.

It uses hp-setup under the hood for HPLIP printers. Most experienced users would go straight to hp-setup directly.

Yes, many of the vendor-supplied drivers include their own installation scripts. Some examples (that I’ve assisted Linux users with over the years)…

  • The “Samsung Unified Linux Driver” distributes as a tarball with install.sh script.
  • Canon URFII and legacy CAPT printer drivers have their own installation procedures. The latter has a running ccpd daemon to facilitate printing.
  • Brother supplies CUPS drivers, but also offer an installation script package if desired.
  • Kyocera typically provide archive packages with RPM/DEB packages, sometimes with a helper install script for setup.

I would drop the “equivalency” term - it’s better to note that these are vendor-provided “installation helpers” than broad setup applications (as YaST once tried to be).

1 Like

The end of an era. Because of YaST, I recommended S.u.S.E. for decades to interested beginners. I could always trust my Windows co-admins to use YaST for most tasks while I was sick or on vacation. The whole world wide web is full of YaST reference if some openSUSE beginner searches for help.

Now what?

1 Like

The world will keep turning.

As can be seen, most tasks can be done in better/other ways nowadays.

2 Likes

I too used YaST extensively and am somewhat sad to see it go.

Still, I would counter that the point of this ‘alternative’ list, for each item that was in YaST, is to equate or improve on what YaST provided.

The idea is to have this list updated/polished … and then made more freely available. Such that nothing is lost.

… and further, given YaST functionality sadly has been declining over the years (due to difficulty in finding maintainers), possibly such an alternative list as this one (or a superior list created elsewhere) will ultimately be better than YaST.

Pity. I have about a dozen acquaintances that I got interested in moving to linux after windoze 10 support ends, and the main concern of a few of the most knowledgeable ones (not much) was having to use the command line, being used to GUIs for everything. Yast2 would have been a big USP with them. Besides, I wouldn’t need to get acquainted with another distro. Perhaps Zorin or LMDE will be more familiar to them.

1 Like

For most common user configuration tasks, the GNOME and Plasma desktop environments offer robust graphical utilities. At the administrative level, tools like Myrlyn for software management and updates, along with Cockpit, are likely to meet the needs of the majority of users.

3 Likes

Some of the noted apps have GUI front ends that may provide more, or less, functionality.

I have not cleaned up the above list yet enough to make that clear (because I am still learning here). For example, I believe (and if I have this wrong, please anyone correct me - as I am interested in accuracy in areas I am no expert):

Apps with GUI (that I may still need to clarify above) for the same or more functionality than what YaST may have had? < unsure > :

  • hp-setup -i (GUI)
  • fdisk(CLI) / parted (CLI) => Gparted (GUI)
  • virsh(CLI) => virt-manager or GNOME Boxes
  • useradd/usermod => I believe there are GNOME desktop settings and KDE desktop system setting GUI ways of doing such … I have not yet explored this yet

There are also GUIs that provide some, but not all of the functionality of the CLI command functionality:

  • systemctl (CLI) => GUI with command systemd-manager, but not all systemctl (CLI) capabilities present
  • localectl/timedatectl/hostnamectl => I believe there are GNOME desktop settings and KDE desktop system setting GUI ways of doing such … I have not yet explored this but I believe limited compared to those apps
  • lpadmin => I believe GNOME/KDE Printer Settings provide GUI Print queue management, but perhaps a bit limited compared to lpadmin
  • avahi => avahi-discover-standalone (GUI - limited to browsing)

Again, I am still researching this myself and I have not confirmed the above - hence I am interested in corrections.

1 Like

@oldcpu For hp-setup -i is interactive (CLI) not (GUI) which is default or -u if you run hp-setup --help to see all the info.

1 Like

I confess, I did not run hp-setup -i nor hp-setup as I did not want to risk messing up my current hp-setup.

But I did look at hp-setup --help and what confused(?) me was:

Examples:

  Setup using GUI mode:                        $ hp-setup                                                                                             
  Setup using GUI mode, specifying usb:        $ hp-setup -b usb                                                                                      
  Setup using GUI mode, specifying an IP:      $ hp-setup 192.168.0.101

So maybe it is just hp-setup without the “i” argument to get an HP configuration GUI?

Yes, just hp-setup for the GUI :wink:

The KDE Plasma Printer Management allows detailed vendor specific printer configuration –
AFAIKS, only the CUPS “lpoptions” CLI command and, the GNOME Printer Management, offer an alternative method.

Yes, my experience with the HP P1102w has been, add the required plugins via hp-plugin for my printer and it just works… Plus the Printer has a Web UI if needed…

Interesting. I have never used lpadmin nor lpoptions (that I can recall). Am I correct that one should:

  • Use lpadmin for initial printer setup, driver installation, and major configuration changes
  • Use lpoptions for fine-tuning print defaults and user preferences

I had thought that the previous YaST printer module primarily mostly handled what lpadmin does.

This had me curious and I then on a related topic, I then researched the CUPS Web Interface ( http://localhost:631/admin ) a bit ( I confirmed (well, i think I confirmed - I am no expert) it is NOT a front end for either lpadmin nor lpoptions).

I believe CUPS Web Interface ( http://localhost:631/admin ) (referenced above) may also provide lpadmin and lpoptions functional type of support, but with one’s browser as the GUI.

Based on some brief reading, I think localhost:631 uses the CUPS API (libcups) and the cupsd (CUPS daemon which possibly has a built in limited HTTP server) to communicate directly with cups to configure one’s printer. More specifically, if I have that right cupsd runs both as a print spooler/scheduler and a limited web server (ie provides user interface).

So I am tempted to update the above list for 2b(printer) and put : " lpadmin(for setup) " and " lpoptions (for maintenance) " .

Yes, in a nutshell that is correct.

Trying to create a YaST modules alternative list, has given me an excuse to attempt to learn more (to push me out of my nominal lazy approach). Its sobering, as it reminds me as to how little I knew before (or just as likely I knew a lot of this and forgot).

On the topic of printing with HP printers (it took me a while to try and stitch together this understanding, which may not be 100% correct).

I read that there are many different parts/files (?) that come with hplip, where if I understand this correctly,

  • the hp-plugin is a CLI utility that comes as part of the hplip suite. It will will download and install HP’s proprietary binary plugin for HPLIP (HP Linux Imaging and Printing).
  • the PPD (Postscript Printer Description) configuration files needed for HP printer functionality are included in the main hplip package

Continuing on my effort to understand, I read functionally a new print job will go from the application to CUPS.

CUPS will read the PPD files (from the main hplip package) and depending on the HP printer type:

  • For HP PostScript printers with advanced features (like secure printing, job storage, etc.), the PPD will instruct CUPS to apply the HPLIP filter program hpps (HP PostScript finishing filter) to process the print data
  • For HP inkjet/non-PostScript printers (the majority), CUPS uses other HPLIP processing methods or works as driverless IPP printers
  • For fax-capable printers, CUPS may use backend programs like hpfax for fax functionality

[ I am not 100% certain I have the above accurate ]

These filter and backend programs are separate executable files included in the main hplip package. When needed, the HP filter programs will use the binaries downloaded by hp-plugin to process the print data, and CUPS will then send the processed data to the printer.

What does CUPS (Common Unix Printing System) do in all of this for this HP printers example? I read CUPS acts as a:

  • format conversion (for formats such as PDF or postscript into HPLIP filter acceptable formats)
  • print spooler (queues the print jobs)
  • print job manager (schedules and prioritizes the print jobs)
  • a filter co-ordinator (selects which HP filters to use)
  • an interface layer (it sits between the printer and the printer specific drivers)

And I also read the main hplip package also includes GUI tools such as:

  • hp-toolbox - The HP Device Manager (aka “Toolbox”) for HPLIP supported devices. Provides access to status, tools, and supplies levels
  • hp-setup - printer setup wizard (GUI by default, can also run in CLI interactive mode)
  • hp-faxsetup & hp-sendfax - faxing interfaces

Possibly if I had surfed more I would have found that quickly, instead of spending about 3 hours < gasp > to try and sort it in my mind. And I am still not certain I have it correct.

Anyway … the bottom line, I guess, is hplip (with its many packages) and cups (using the browser localhost:631 or KDE/Gnome desktop GUIs) to configure a printer should work in lieu of YaST’s printer functionality.

1 Like

You should review the man pages for each command.

Good idea to read the man pages. I note (from the man pages):

lpadmin - configures printer and class queues provided by CUPS. It can also be used to set the server default printer or class.

and

lpoptions displays or sets printer options and defaults.

So I am still tempted to update the above list for 2b(printer) and put : " lpadmin(for setup) " and " lpoptions (for maintenance) " .

I concede that is not 100% precise, but I can’t think of a better very succinct summary, although i guess for lpadmin I could instead put lpadmin(for configuration).

I like using ‘maintenance’ for lpoptions.

I think you’re trying to dig in too deep here, (some of this could be asked as dedicated topics), and these topics are largely covered in a multitude of online resources already. The title of this topic could be changed to something more like

Alternatives to YaST modules: CLI tools, GUIs, and web interfaces

YaST modules and corresponding alternative configuration tools

It’s not really maintenance though - it facilitates setting print options for a particular workflow. At a desktop level, print dialogue boxes allow user changes for particular printing purposes.