Dnf can't install anything because it thinks root is full

New to fedora, was trying out Bazzite and have been pretty annoyed by dnf/yum refusing to work.

the main issue with dnf is an error saying

Transaction failed: Rpm transaction failed.
  - installing package x needs XXMB more space on the / filesystem

here’s the df -h output

Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p8  172G   96G   67G  60% /sysroot
devtmpfs        4.0M     0  4.0M   0% /dev
tmpfs           3.8G   90M  3.7G   3% /dev/shm
efivarfs        184K  147K   33K  82% /sys/firmware/efi/efivars
tmpfs           1.6G  2.1M  1.6G   1% /run
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-journald.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-network-generator.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-udev-load-credentials.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-sysctl.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup-dev-early.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-sysusers.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup-dev.service
overlay         172G   96G   67G  60% /usr/share/sddm/themes
tmpfs           3.8G   16M  3.8G   1% /tmp
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup.service
/dev/nvme0n1p5  974M  584M  323M  65% /boot
/dev/nvme0n1p4  599M   13M  587M   3% /boot/efi
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-resolved.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-vconsole-setup.service
tmpfs           772M  272K  772M   1% /run/user/1000

Is there a permission I’m missing? I’m the sole root account in this installation.

Hi and welcome to :fedora: !

Bazzite is a custom Fedora Atomic image, so dnf is expected not to work other than inside containers.

What edition of Fedora are you on now (head -3 /etc/os-release)?

Please also share the output of lsblk -f, cat /etc/fstab/, as well as the dnf command you ran before, and, in case you’re on an atomic variant of Fedora, the output of rpm-ostree status.

EDIT: Please post the outputs as preformatted text, using the </> button on the toolbar above the edit window.

How do I set containers for dnf?

fedora version

NAME="Bazzite"
VERSION="41.20250208.0 (Kinoite)"
RELEASE_TYPE=stable

lsblk -f

NAME         FSTYPE FSVER LABEL     UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
zram0                                                                                   [SWAP]
nvme0n1                                                                                 
├─nvme0n1p1                                                                             
├─nvme0n1p2                                                                             
├─nvme0n1p3  ntfs                   24DE37D9DE37A1CA                                    
├─nvme0n1p4  vfat   FAT32           F01E-6FA6                             586.3M     2% /boot/efi
├─nvme0n1p5  ext4   1.0             04cb683f-af11-4308-b4bf-76dcd6012e0a  322.2M    60% /boot
├─nvme0n1p6  swap   1               c69fea15-2497-45c5-9baa-2439515cb683                [SWAP]
├─nvme0n1p7                                                                             
├─nvme0n1p8  ext4   1.0             741cad1a-60e2-4470-9a6a-fe9b0059f394   66.4G    56% /var
│                                                                                       /sysroot/ostree/deploy/default/var
│                                                                                       /usr
│                                                                                       /etc
│                                                                                       /
│                                                                                       /sysroot
├─nvme0n1p9  ntfs         WINRE_DRV A21C719C1C716C63                                    
└─nvme0n1p10 vfat   FAT32           BCC9-061A                                           

cat /etc/fstab


#
# /etc/fstab
# Created by anaconda on Thu Feb  6 21:59:00 2025
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
UUID=741cad1a-60e2-4470-9a6a-fe9b0059f394 /                       ext4    defaults        1 1
UUID=04cb683f-af11-4308-b4bf-76dcd6012e0a /boot                   ext4    defaults        1 2
UUID=F01E-6FA6          /boot/efi               vfat    umask=0077,shortname=winnt 0 2

rpm-ostree status

State: idle
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-nvidia:stable
                   Digest: sha256:c8431abd3243ecee93f84ebf37b5a1643db5fc9a6efce66cea67470c7f779ae0
                  Version: 41.20250208 (2025-02-08T06:51:44Z)
          LayeredPackages: lact

  ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-nvidia:stable
                   Digest: sha256:8c5da332b153627872f52e3577a3bfca4161613efacd488213a02e47b05029e0
                  Version: 41.20250206 (2025-02-06T17:59:23Z)
          LayeredPackages: lact

here’s also the full log for dnf trying to install gparted

Updating and loading repositories:
Repositories loaded.
Package                             Arch      Version                              Repository              Size
Installing:
 gparted                            x86_64    1.6.0-5.fc41                         updates              8.8 MiB

Transaction Summary:
 Installing:         1 package

Total size of inbound packages is 2 MiB. Need to download 0 B.
After this operation, 9 MiB extra will be used (install 9 MiB, remove 0 B).
Is this ok [y/N]: y
[1/1] gparted-0:1.6.0-5.fc41.x86_64                                    100% |   0.0   B/s |   0.0   B |  00m00s
>>> Already downloaded
---------------------------------------------------------------------------------------------------------------
[1/1] Total                                                            100% |   0.0   B/s |   0.0   B |  00m00s
Running transaction
Transaction failed: Rpm transaction failed.
  - installing package gparted-1.6.0-5.fc41.x86_64 needs 10MB more space on the / filesystem

Use rpm-ostree instead of dnf, see the Bazzite documentation.

1 Like

Yes thank you I assumed It’s a general fedora issue instead of checking bazzite’s website.

Well it seems that you’re on Bazzite, so not on an official Fedora release, which limits the help that can be provided here. You might also want to discuss Bazzite-specific issues on their Discourse forums.

As a general remark though, are you sure you wanted to use an atomic desktop, which has a rather different approach to package installations (among other things), as opposed to traditional desktops? If you’re a fan of dnf, you might want a traditional version of UBlue Fedora instead.

If you’d want to stick with your current installation, the general approach is to install GUI apps as Flatpaks, layer packages that need to be layered on top of the OSTree deployment, and install other utilities in containers. I suggest to have a look at man rpm-ostree to get familiar with the concept of package layering and RPM-OStree in general, and man toolbox for an easy approach to containers.

It is a general Fedora difference. All Fedora Atomic Desktops are using rpm-ostree

There is no traditional version of uBlue. There are Nobara and Ultramarine, which are Fedora Downstreams that do some things differently.

I recommend atomic desktops, but for sure read the docs.

1 Like

You’re right. I’ve edit my post to reflect this.