How to upgrade Cups and cups-filters in Ubuntu 20.04 to the latest versions that are part of Ubuntu 20.10 to fix multiple copies bug?
some printers are affected by the "multiple copies bug" (they do only print one page instead of the desired multiple copies: no matter how many copies you request, only one page comes out of the printer).
Affected are, for example, Brother MFC-L8900CDW, Brother MFC-L8650DW, HP OfficeJet 6950.
They all have one thing in common: they are connected to their PCs via network, using a fixed IP address.
Printing and scanning work fine except that if you want to print multiple copies, which sometimes is necessary, you only get one copy.
After doing some research, I found out, that obviously this bug is fixed in the cups-filters > 1.27.5 (and therefore 1.28.5, that are already part of the groovy distribution). Here is the corresponding page on github:
Now I don't want to switch those production machines from an LTS version to an intermediate 9-month-version only to fix that cups-filters bug.
So my idea is, to upgrade cups to 2.3.3 in Ubuntu 20.04, but I am not skilled enough to do that, and I haven't found a solution yet.
Installing the cups-filters 1.28.5 fails due to the missing dependencies that are not part of the focal repositories. Hence I guess I need to uninstall cups 2.3.1 in 20.04 completely, and install the groovy cups version 2.3.3, that includes these cups-filters.
Is anyone here able to help me out with this, or has an advice how to fix that bug?
Thank you so much for any help
Alyana
12 Answers
It's been a while, but today I found the solution to my specific problem with the Brother MFC-L8900CDW printer, so I post an answer to my own question. Hopefully it will be helpful for other people facing the same problem.
The solution I found comes from here:
It's a post from tillkamppeter from July 12 that finally lead me on the right track.
Actually all I needed to do was altering the ppd file with root rights, so no need to change the cups version in my case. Obviously the ppd file provided by Brother didn't work out correctly.
Here is what helped me:
Stop the CUPS daemon:
sudo systemctl stop cupsThen edit the ppd file (you need to do this with root rights):
sudo nano /etc/cups/ppd/MFCL8900CDW.ppdYou find a line like
*cupsManualCopies: falsenear the beginning of the file. Change this line to
*cupsManualCopies: TruePlease note it's True, not true (case sensitive). It was mentioned somewhere else in that thread that it has to be written with capital T.
Save the file
CTRL+OExit the editor
CTRL+Xand restart cups
sudo systemctl start cupsFrom this point on things have been working fine.
Thanks for everyone who helped me and for your time.
2Try this:
Uninstall cups:
sudo apt-get remove --purge cups*Download the package from their site:
Unzip the file and install cups:
cd ~/home/Alyana/Downloads
tar –zxvf cups-2.3.3-source.tar.gz
cd /cups-2.3.3
./configure
make
sudo make installTo uninstall this package:
cd ~/home/Alyana/Downloads/cups-2.3.3
sudo make uninstall
sudo apt-get autoremove --purgeTo reinstall the original:
sudo apt-get update sudo apt-get install cupsEdited: ========================================================
Check first if cups and cups-browsed are not in /etc/init.d/
If they are there, move and activate them
sudo mv /etc/init.d/cups /etc/systemd/system/
sudo mv /etc/init.d/cups-browsed /etc/systemd/system/
sudo systemctl enable cups
sudo systemctl enable cups-browsedIt remains to try the following to install with checkinstall
Install checkinstall
sudo apt-get update
sudo apt-get install --reinstall checkinstall Uninstall what was installed with make
cd ~/home/Alyana/Downloads/cups-2.3.3
sudo make uninstall
sudo apt-get autoremove --purgeUse checkinstall
sudo checkinstallThe checkinstall "wizard" will open. In it you can modify the information that the package will have, the options are:
Maintainer - The main developer of the package.
Summary: a description of the package.
Name: name that you want to give to the package.
Version: package version.
Release: it is the main version of the package, we can leave it as it comes.
License: application license, it is preferable not to touch it.
Group: group by which it was created, we can leave it as is.
Architecture: package processor architecture.
Source location: name of the folder (only the folder, not the entire path) where the package code is.
Alternate source location: no need to modify.
Requires: dependencies that must be installed for their correct operation.
Provides: name of the package that provides, it is not necessary to modify it.
Conflicts: packages with which it conflicts.
Replaces - Packages it replaces.There are a wide number of options to modify. Each one has a number on its left, to edit it just type its number and press [Enter].
Those that are usually modified are: Maintainer, Summary, Name and Version.
Once we have modified what we want, we press [Enter] and it will begin to compile and install the package.
When it is finished, a .deb package of the application will have appeared in the directory where we compiled, ready to install on another pc.
In "Version", there should be no letters. Do not edit "Requires".
4