brother-mfc9140cdn: New package#9362
Conversation
Add printer driver for Brother MFC-9140CDN. Provides CUPS wrapper and LPR driver for the Brother MFC-9140CDN multifunction printer, sourced from Brother's official Linux RPM packages. Checklist: - [x] Package was built and tested against unstable - [x] I agree to license this contribution and all my previous contributions under the licensing terms in LICENSE.md and have the power and authority to grant those licenses.
| install -d -m 00755 $installdir/usr/share/cups/model/Brother | ||
| install -m 00644 $installdir/opt/brother/Printers/mfc9140cdn/cupswrapper/brother_mfc9140cdn_printer_en.ppd \ | ||
| $installdir/usr/share/cups/model/Brother/ |
There was a problem hiding this comment.
This can be combined into a single line:
install -Dm 00644 $installdir/opt/brother/Printers/mfc9140cdn/cupswrapper/brother_mfc9140cdn_printer_en.ppd \
-t $installdir/usr/share/cups/model/Brother/| ln -s /opt/brother/Printers/mfc9140cdn/lpd/filtermfc9140cdn \ | ||
| $installdir/usr/lib/cups/filter/filtermfc9140cdn | ||
| ln -s /opt/brother/Printers/mfc9140cdn/cupswrapper/cupswrappermfc9140cdn \ | ||
| $installdir/usr/lib/cups/filter/cupswrappermfc9140cdn |
There was a problem hiding this comment.
A better practice is to use the -srv, or just -sv, if we really want absolute paths in links. The -v options helps in debugging package builds, or just to see what's going on. -r tells it to use relative paths.
ln -srv $installdir/opt/brother/Printers/mfc9140cdn/lpd/filtermfc9140cdn \
$installdir/usr/lib/cups/filter/filtermfc9140cdn
ln -srv $installdir/opt/brother/Printers/mfc9140cdn/cupswrapper/cupswrappermfc9140cdn \
$installdir/usr/lib/cups/filter/cupswrappermfc9140cdn| $installdir/usr/lib/cups/filter/filtermfc9140cdn | ||
| ln -s /opt/brother/Printers/mfc9140cdn/cupswrapper/cupswrappermfc9140cdn \ | ||
| $installdir/usr/lib/cups/filter/cupswrappermfc9140cdn | ||
| %install_license |
There was a problem hiding this comment.
You need to pass a list of files to this macro for it to do anything. Unfortunately, Brother doesn't include any license files in the RPMs.
From my understanding, a future CUPS on the horizon is going to make all of these drivers obsolete, so I guess this problem will solve itself.
Let's just remove the macro call entirely.
| releases: | ||
| id: ~ # Check https://release-monitoring.org/projects/search/ | ||
| rss: ~ # For example https://github.com/PyO3/maturin/releases.atom | ||
| # No known CPE, checked 2026-06-20 | ||
| security: | ||
| cpe: ~ |
There was a problem hiding this comment.
The monitoring.yaml file should look like this for packages that won't ever benefit from it.
# This package will never benefit from a monitoring.yaml please do not attempt to edit any of the fields.
# https://github.com/getsolus/packages/issues/4533
releases:
id: ~
rss: ~
security:
cpe: ~
Summary
New package for the Brother MFC-9140CDN printer driver (CUPS wrapper + LPR), built from Brother's official Linux RPM packages. Follows the same structure as the existing brother-mfc9130cw package — Brother's RPMs don't bundle a license file, so license info is only declared in package.yml, same as in brother-mfc9130cw.
Test Plan
Built and installed locally against unstable. I don't have the physical printer to test actual printing, but I checked that:
Checklist