A generic method that works with non-LVM partitions:
- Boot from a live CD so that both partitions are unmounted.
- Move the p6 "/boot" partition to the beginning of unallocated space.
- Now the unallocated space becomes adjacent to p7 "fedora".
- Move the p7 "fedora" partition to the beginning of unallocated space.
- Now the unallocated space is to the right of p7 "fedora".
- Expand the p7 "fedora" partition and its filesystem to the right.
However, this could probably be done fastest by creating a second LVM PV in that space, and letting LVM do the merging. (It won't look very neat in the partition table, but on the other hand, it can be done from the running OS and what's the point of having LVM if you don't use it for anything?)
Note: I have not tested this; it's based entirely on the manuals.
- Create an empty partition to claim all the unallocated space.
- Add the new partition to LVM using
- Add the new partition to the main volume group using
vgextend fedora /dev/nvme####.
- Extend the Fedora logical volume using
lvresize --size +147G /dev/fedora/####
- Grow the filesystem using
resize2fs /dev/fedora#### or other apropriate tool.