Printer issues in Artix Linux

Artix is an Arch derivative without systemd. I use the dinit init system in my Artix installation.
I have never bothered setting up my printers in my Artix, but I needed to print recently and decided to set up 2 printers

  • an OKI Okipage 12 i Postscrit printer
  • a Brother MFC640CW inkjet printer and scanner

I was able to find drivers for both printers, set them up in CUPS and the spooling worked fine,
but
they would not print graphics … only text.
For example the CUPS test page printed with text only.

I had about 3 nights of to and fro with an AI helper, and we improved things to the stage where printing from the CLI and printing from a GUI app like Okular worked properly,
but
the test page still printed text only.

We gave up on the test page. I can print , and that is all I need.

The explanation , which I quote from AI, is as follows

" On minimal or systemd-free distributions (like Artix Linux), modern CUPS handles print filters using a dedicated unprivileged user (cups, UID 209) rather than the legacy lp user. When printing normal documents or images via applications (like Okular) or the CLI (lp), standard user environment paths are used. However, when triggering the built-in CUPS Test Page, the system spawns the Ghostscript (gs) raster filter under this isolated cups user.

Because the cups user lacks a valid home directory, environment variables ($HOME), or write access to /var/cache/fontconfig, the vector-to-raster filter engine silently drops graphics, patterns, and gradients—leaving you with text-only prints"

The fixes which were applied were

  1. Install Arch compatability packages
sudo pacman -S artix-archlinux-support
sudo pacman-key --populate archlinux
  1. Make a home directory for the cups user
Put this line in /etc/passwd
cups:x:209:209:cups:/var/spool/cups:/usr/bin/nologin
  1. Fix permissions and rebuild the font cache
sudo chown -R cups:cups /var/spool/cups
sudo chmod 770 /var/spool/cups
sudo chmod -R 775 /var/cache/fontconfig
sudo chown -R root:cups /var/cache/fontconfig

# Force-regenerate the rendering cache cleanly as the cups user
sudo -u cups fc-cache -r -f -v
  1. Restart the cups daemon
sudo dinitctl restart cupsd 

That is not a complete fix , but at least it gets normal printing working.

The strange thing is I have had no such problem in Void Linux or in Gentoo. Both of those are rolling release and would be as up to date as Artix..

One might comment that a test page is not much use if it uses a different print path to all other printing.

Has anyone else had printer issues in Arch derived distros?

Hi Neville,

As you know, I am not a fan of Arch and know very little about how CUPS works. So I asked Gemini about you question and hope it’s input may help.

Thanks Harold.
I think the one missing might be poppler-data?
I have the others, and I have poppler.
Will check.
Seems your AI is more knowledgeable than mine.

What puzzles me is that AI seems to find info that I cand find with a google search?

Well, a google search will return web pages that you then have to read and see if it matches the problem. AI on the other hand has a huge knowledge base and can combine key words that best fix the inquire as well as has access to web pages.

Google and AI are 2 completely different animals. :wink:

That is it. Google search does not seem to have access to as much information.
I thought AI was trained on web info? Where does it get its extra info from?

When I was working with lumina source code , AI seemed to know every line of the code and what its purpose was.
Even if it digested all the source code on Github, how does it learn what each section of code does? It must be able to understand the C code well enough to be able to identify what each section of code does and how the lumina de works . There is no documentation to help it.

It is installed on my Artix system . That is not the solution.
Thanks for trying.

Did you install the package cups-dinit

Good question.
Yes I have cups-dinit installed.
Without that cups would not be able to start daemons.
There is almost certainly something missing.

It’s been years since I had any issues with printers on Linux, but the last time I did it was a CUPS-based issue. I do know that certain printers work better than others on Linux, but if this is a recent issue my bet is there was an update that broke something. Plus, Brother printers typically have a good rep with Linux compatibility.

I’m not sure which AI is best as a problem finder on this, either. Claude? Regardless, I always start experimenting and testing when something like this arises. I hope you can fix this.

[quote=“William, post:9, topic:16253, username:WT480”]s
my bet is there was an update that broke something.
[/quote]

That is possible.
I can live with it … only the test print fails, normal printing is OK

That is only one source of information an AI is trained on.

I found this at a web site shown below.

Quick Answer — How AI Models Get Training Data

    Web scraping:
    Most AI training data comes from publicly available web content, including
    Common Crawl (web archives), Wikipedia, books, news articles, and code
    repositories like GitHub.
    
    Licensed datasets:
    Companies increasingly license high-quality content from publishers, news
    organizations, and content creators to improve model quality and address 
    copyright concerns.
    
    Preprocessing pipeline:
    Raw data undergoes extensive cleaning, deduplication, filtering, quality 
    scoring, and tokenization before being used for training.
    
    Quality over quantity:
    Modern AI development emphasizes curated, high-quality datasets over 
    simply collecting the largest possible amount of data.
    
    Legal gray areas:
    The legality of web scraping for AI training remains contested, with 
    ongoing lawsuits and evolving regulations shaping industry practices.

I did ask 2 AIs how many 8x11 pages of single spaced lines of information would this be at 500 words per page.

Gemini said some where between 19.5 to 22.5 billions pages.
Copilot said it would be equal to about 30 to 35 billions pages for current AIs.

What it misses is non-web info… like books in libraries, technical data, scientific journals and stuff in private hands.

It amazes me how it can understand code … no amount of training with text is going to achieve that.
If I read every line of C code that exists It would not help me to write a C program … you need to practice.
AI doesnt learn by practicing… it learns by observing
Its only intelligence is to opt for statistically probable outcomes.

What it will lead to is anyone’s guess.

I use Artix with OpenRC init and a Samsung printer.

No problem with it.