# Solved: Can't Add Network Printer on KDE Linux (Project Banana - Immutable)

**URL:** <https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288>\
**Category:** Help\
**Tags:** printer, kde-linux\
**Created:** [February 18, 2025, 9:24am UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288 "2025-02-18T09:24:21Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![silverhadch](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/silverhadch/32/18485_2.png) [@silverhadch](https://discuss.kde.org/u/silverhadch)\
**Post date:** [February 18, 2025, 9:24am UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/1 "2025-02-18T09:24:21Z")

</div>

Hey everyone,

I’m trying to set up my HP OfficeJet 3080 network printer on KDE Linux (Project Banana) (Arch-based, immutable), but I’m running into several issues. The printer worked fine on other distros, but here, I can’t get it working properly.

Issues I’m Facing:

1. Adding the printer via GUI only works if I select a driver, but the file becomes null.

2. The recommended driver gives an “invalid argument” error when adding the printer.

3. CUPS web interface loops when logging in as root but works as a normal user.

4. Driverless setup fails with an error about not being able to retrieve an IPP file.

5. Printing with driverless fails with “can’t locate printer printer.local”.

This makes me suspect Avahi, systemd-resolved, or mDNS issues.

What I Can and Can’t Do:

✅ I CAN modify and enable services (CUPS, Avahi, systemd-resolved, etc.)  
✅ I CAN use systemd-sysext for overlays  
❌ I HAVEN’T tried anything yet besides encountering these issues

Next Steps - Need Help With:

1. Has anyone gotten network printing to work on Project Banana or similar immutable Arch distros?

2. Could this be an Avahi/mDNS issue, and if so, how do I fix it?

3. Should I try overlaying hplip or other drivers with systemd-sysext, or is there a better way?

Any help would be appreciated! Thanks in advance!

---

<div class="post-metadata">

**Author:** ![H\_Whelan](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/h_whelan/32/7229_2.png) [@H\_Whelan](https://discuss.kde.org/u/H_Whelan)\
**Post date:** [August 27, 2025, 3:44pm UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/2 "2025-08-27T15:44:34Z")

</div>

You may have already solved this, but in case you haven’t, I had to take some extra steps to get my Brother network printer working on the new immutable KDE Linux (i.e., the KDE Settings → add printer route did not work). Essentially some of the CUPS conf files weren’t set up automatically. The sequence of commands I ran were:

```auto
sudo mkdir -p /etc/cups
sudo cp /tmp/cupsd.conf /etc/cups/cupsd.conf
sudo chown root:lp /etc/cups/cupsd.conf && sudo chmod 640 /etc/cups/cupsd.conf
sudo mkdir -p /run/cups && sudo chown root:lp /run/cups && sudo chmod 755 /run/cups
sudo mkdir -p /var/spool/cups && sudo chown root:lp /var/spool/cups && sudo chmod 710 /var/spool/cups
sudo usermod -a -G lp hugh
sudo systemctl start cups.service

lpadmin -p "Brother-HL-L2370DW" -E -v "ipp://192.168.68.54:631/ipp/print" -m "everywhere" -D "Brother HL-L2370DW"

```

There may be better/simpler ways of doing this, but my printer works fine after running those commands.

---

<div class="post-metadata">

**Author:** ![silverhadch](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/silverhadch/32/18485_2.png) [@silverhadch](https://discuss.kde.org/u/silverhadch)\
**Post date:** [August 27, 2025, 7:14pm UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/3 "2025-08-27T19:14:37Z")

</div>

Thanks for mentioning. I fixed the local domain resolving in KDE Linux 6 months ago.

> **[Adding nss-mdns for Avahi mDNS for local domain resolving etc. (!142) · Merge...](https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/142)**
>
> Now only modifiying /etc/nsswitch.conf is necesarry. And disabling systemd-resolve as it will only get in the way despite disabling its mdns functionality. https://wiki.archlinux.org/title/Avahi#systemd-resolved\_prevents\_nss-mdns\_from\_working...

---

<div class="post-metadata">

**Author:** ![ngraham](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/ngraham/32/64_2.png) [@ngraham](https://discuss.kde.org/u/ngraham)\
**Post date:** [August 29, 2025, 12:06am UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/4 "2025-08-29T00:06:24Z")

</div>

This seems strange. All of those files are present on my KDE Linux system. When did you install yours? Mine was installed a few weeks ago, and then updated daily. Is yours a very old installation?

---

<div class="post-metadata">

**Author:** ![H\_Whelan](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/h_whelan/32/7229_2.png) [@H\_Whelan](https://discuss.kde.org/u/H_Whelan)\
**Post date:** [August 29, 2025, 12:33am UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/5 "2025-08-29T00:33:14Z")

</div>

No my system is very recent. In fact I just reinstalled yesterday using the latest raw image (I reinstalled because I wanted to use an encrypted hard drive). There is no /etc/cups/cupsd.conf file present (and nothing in /run/cups and no /var/spool directory). systemctl status cups. service produces:

```auto
○ cups.service - CUPS Scheduler
     Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled; preset: enabled)
     Active: inactive (dead) (Result: exit-code) since Thu 2025-08-28 20:22:28 EDT; 11s ago
 Invocation: 0364e6492a9a4e09a4a79056ff974782
TriggeredBy: × cups.socket
             × cups.path
       Docs: man:cupsd(8)
    Process: 2741 ExecStart=/usr/bin/cupsd -l (code=exited, status=1/FAILURE)
   Main PID: 2741 (code=exited, status=1/FAILURE)
   Mem peak: 1.7M
        CPU: 42ms

Aug 28 20:22:28 archlinux systemd[1]: cups.service: Scheduled restart job, restart counter is at 1.
Aug 28 20:22:28 archlinux systemd[1]: Stopped cups.service.
Aug 28 20:22:28 archlinux systemd[1]: Dependency failed for cups.service.
Aug 28 20:22:28 archlinux systemd[1]: cups.service: Job cups.service/start failed with result 'dependency'.

```

---

<div class="post-metadata">

**Author:** ![ngraham](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/ngraham/32/64_2.png) [@ngraham](https://discuss.kde.org/u/ngraham)\
**Post date:** [August 29, 2025, 1:01am UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/6 "2025-08-29T01:01:18Z")

</div>

Can you report this at [Issues · KDE Linux / KDE Linux · GitLab](https://invent.kde.org/kde-linux/kde-linux/-/issues/)? Bonus points if you can figure out which dependency is missing.

---

<div class="post-metadata">

**Author:** ![H\_Whelan](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/h_whelan/32/7229_2.png) [@H\_Whelan](https://discuss.kde.org/u/H_Whelan)\
**Post date:** [August 29, 2025, 1:35am UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/7 "2025-08-29T01:35:49Z")

</div>

Yes. I will do that. For what it’s worth, an AI analysis of the problem (Warp Terminal) reports that the primary failure is caused by inability to find /etc/cups/cupsd.conf (reported by the journal). Because the main CUPS service keeps failing and restarting, the associated systemd units cups.path and cups.socket are hitting their start limits and also failing. This creates a cascade of dependency failures.

The Solution  
The system appears to use factory defaults stored in /usr/share/factory/etc/cups/. The configuration files need to be copied from the factory location to /etc/cups/.

To fix this, you need to copy the factory configuration files:

```auto
sudo cp -r /usr/share/factory/etc/cups/* /etc/cups/
sudo chown -R root:cups /etc/cups/
sudo chmod 640 /etc/cups/cupsd.conf /etc/cups/cups-files.conf /etc/cups/snmp.conf

```

Then restart the CUPS services:

```auto
sudo systemctl reset-failed cups.service cups.path cups.socket
sudo systemctl start cups.service

```

I can confirm that if I run these commands, the cups service runs and KDE settings can see my network printer.

---

<div class="post-metadata">

**Author:** ![ngraham](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/ngraham/32/64_2.png) [@ngraham](https://discuss.kde.org/u/ngraham)\
**Post date:** [August 29, 2025, 1:58am UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/8 "2025-08-29T01:58:29Z")

</div>

That makes sense. We’ve had to do this for a bunch of other things that still hardcode a path in `/etc`. This is fixable by creating some symlinks using [mkosi.extra/usr/lib/tmpfiles.d/etc.conf · master · KDE Linux / KDE Linux · GitLab](https://invent.kde.org/kde-linux/kde-linux/-/blob/master/mkosi.extra/usr/lib/tmpfiles.d/etc.conf) . Would you like to try your hand at that and submit a patch?

---

<div class="post-metadata">

**Author:** ![H\_Whelan](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/h_whelan/32/7229_2.png) [@H\_Whelan](https://discuss.kde.org/u/H_Whelan)\
**Post date:** [August 29, 2025, 2:22am UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/9 "2025-08-29T02:22:02Z")

</div>

Thank you so much, but I think that doing the patch is beyond my skill level. I think I see the logic of the symlink file, but I’m afraid I might mess up the chown and chmod syntax. I also want to report that to actually get my printer working, I had to add two missing directories: /var/spool/cups and /run/cups/certs (as otherwise CUPS cannot create the necessary spool files and cert files). I then did

sudo chown root:cups /var/spool/cups /run/cups/certs

sudo chmod 755 /var/spool/cups /run/cups/certs

and restarted the cups.service

---

<div class="post-metadata">

**Author:** ![H\_Whelan](https://discuss-cdn.kde.org/user_avatar/discuss.kde.org/h_whelan/32/7229_2.png) [@H\_Whelan](https://discuss.kde.org/u/H_Whelan)\
**Post date:** [August 29, 2025, 12:03pm UTC](https://discuss.kde.org/t/solved-cant-add-network-printer-on-kde-linux-project-banana-immutable/30288/10 "2025-08-29T12:03:13Z")

</div>

Here is an attempt at a patch. I don’t know how to submit it or, more importantly test it. I will also add this to the issues entry I created.

```auto
--- a/mkosi.extra/usr/lib/tmpfiles.d/etc.conf
+++ b/mkosi.extra/usr/lib/tmpfiles.d/etc.conf
@@ -59,3 +59,18 @@ L /etc/avahi/avahi-dnsconfd.action
 L /etc/avahi/hosts
 d /etc/avahi/services 0755 root root - -
 
+# CUPS printing service configuration
+# Link the main CUPS configuration directory
+L /etc/cups
+# Set proper ownership and permissions for key CUPS config files
+z /etc/cups/cupsd.conf 640 root cups - -
+z /etc/cups/cups-files.conf 640 root cups - -
+z /etc/cups/snmp.conf 640 root cups - -
+# Ensure cups group owns the config directory
+z /etc/cups - root cups - -
+# Create CUPS spool and runtime directories with proper permissions
+d /var/spool/cups 755 root cups - -
+d /run/cups 755 root cups - -
+d /run/cups/certs 755 root cups - -
+# Ensure lp user owns the spool directory contents
+z /var/spool/cups - lp lp - -

```

This is an amateur attempt – so should be reviewed by someone who knows what they are doing
