Hello,
I’ve installed guix on a virtual machine.
I’m trying to add the nvidia config from the nonguix readme.
I’ve run guix pull
and setup the nonguix channel in channels.scm
.
When I run sudo guix reconfigure config.scm
I get the error:
guix system: error: profile contains conflicting entries for upower
guix system: error: first entry: upower:1.90.2 /gnu/store/...-upower-1.90.2
guix system: error: second entry: upower:1.90.2 /gnu/store/...-upower-1.90.2
guix system: error: ... propagated from gnome@46.7
hint: Try upgrading both 'upower' and 'gnome', or remove one of them from the profile.
I’ve tried guix upgrade upower gnome
, but that just gives
guix upgrade: warning: nothing to do
I’ve tried guix install gnome upower
, which installs them in my profile, but re-running guix system reconfigure config.scm
gives the same error.
I tried reverting the changes for adding the nvidia nonguix config, and the command sudo guix reconfigure config.scm
completes sucessfully. So I assume something’s wrong with the gnome imports that are introduced as part of the nvidia config.
I think the issue might be that the nonguix channel packages are interfering or are not in sync with the guix channel.
I tried pinning guix and nonguix channels to v1.4.0 commits, and now I get the same error but for slightly different packages.
guix system: error: profile contains conflicting entries for gtk+
guix system: error: first entry: gtk+@3.24.30 /gnu/store/3hfbyphf96riviip19cqap6hnmai6q8m-gtk+-3.24.30
guix system: error: ... propagated from network-manager-applet@1.28.0
guix system: error: second entry: gtk+@3.24.30 /gnu/store/gsyxsri4k6nncw0wb75gxff0zg2nc9xv-gtk+-3.24.30
guix system: error: ... propagated from gnome-online-accounts@3.45.2
guix system: error: ... propagated from gnome@42.4
hint: Try upgrading both `network-manager-applet' and `gnome', or remove one of them from the profile.
Is there a way I can work out which commits to use for both channels that will work?
I also tried the commits used in daviwil’s dofiles channels.scm, with no luck and the same error, with different packages.
channels.scm
(list (channel
(name 'nonguix)
(url "https://gitlab.com/nonguix/nonguix")
(branch "master")
(commit
; master - 9/3/25
; "944619c1947ba59823f4ad6d8b13842b7e162d76")
; v1.4.0
"e662a42388490a2736276c2051aaf5cd3693a1cc")
(introduction
(make-channel-introduction
"897c1a470da759236cc11798f4e0a5f7d4d59fbc"
(openpgp-fingerprint
"2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))
(channel
(name 'guix)
(url "https://git.savannah.gnu.org/git/guix.git")
(branch "master")
(commit
; master - 9/3/25
; "c4f297a664869a18126b66eb5209de1fcceb42d8")
; v1.4.0
"bba1e723b0ae81b377e0927a2f19bcc8b7b79479")
(introduction
(make-channel-introduction
"9edb3f66fd807b096b48283debdcddccfea34bad"
(openpgp-fingerprint
"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))))
config.scm
;; This is an operating system configuration generated
;; by the graphical installer.
;;
;; Once installation is complete, you can learn and modify
;; this file to tweak the system configuration, and pass it
;; to the 'guix system reconfigure' command to effect your
;; changes.
;; Indicate which modules to import to access the variables
;; used in this configuration.
(use-modules (gnu)
;; Import nonfree linux module.
(nongnu packages linux)
(nongnu system linux-initrd)
;; Imports for nvidia
(gnu packages gnome)
(gnu services xorg)
(nongnu packages nvidia)
(nongnu services nvidia))
(use-service-modules cups desktop networking ssh xorg)
(operating-system
(kernel linux)
(kernel-arguments '("modprobe.blacklist=nouveau"
;; Set this if the card is not used for displaying or
;; you're using Wayland:
;"nvidia_drm.modeset=1"))
))
(initrd microcode-initrd)
(firmware (list linux-firmware))
(locale "en_GB.utf8")
(timezone "Europe/London")
(keyboard-layout (keyboard-layout "gb"))
(host-name "guix-vm")
;; The list of user accounts ('root' is implicit).
(users (cons* (user-account
(name "test")
(comment "Test")
(group "users")
(home-directory "/home/test")
(supplementary-groups '("wheel" "netdev" "audio" "video")))
%base-user-accounts))
;; Packages installed system-wide. Users can also install packages
;; under their own account: use 'guix search KEYWORD' to search
;; for packages and 'guix install PACKAGE' to install a package.
(packages (append (list (specification->package "vim"))
%base-packages))
;; Below is the list of system services. To search for available
;; services, run 'guix system search KEYWORD' in a terminal.
(services
(modify-services
(cons* (service gnome-desktop-service-type)
;; To configure OpenSSH, pass an 'openssh-configuration'
;; record as a second argument to 'service' below.
(service openssh-service-type)
(service cups-service-type)
(set-xorg-configuration
(xorg-configuration
(modules (cons nvda %default-xorg-modules))
(drivers '("nvidia"))
(keyboard-layout keyboard-layout)))
(service nvidia-service-type)
;; Configure desktop environment, GNOME for example.
(service gnome-desktop-service-type
;; Enable NVIDIA support, only do this when the card is
;; used for displaying.
(gnome-desktop-configuration
(gnome (replace-mesa gnome))))
;; This is the default list of services we
;; are appending to.
%desktop-services)
(guix-service-type config => (guix-configuration
(inherit config)
(substitute-urls
(append (list "https://substitutes.nonguix.org")
%default-substitute-urls))
(authorized-keys
(append (list (local-file "./signing-key.pub"))
%default-authorized-guix-keys))))))
(bootloader (bootloader-configuration
(bootloader grub-bootloader)
(targets (list "/dev/sda"))
(keyboard-layout keyboard-layout)))
(swap-devices (list (swap-space
(target (uuid
"a143e351-164a-4b3f-adca-933120045c39")))))
;; The list of file systems that get "mounted". The unique
;; file system identifiers there ("UUIDs") can be obtained
;; by running 'blkid' in a terminal.
(file-systems (cons* (file-system
(mount-point "/")
(device (uuid
"d3a406ad-5add-4110-b970-50fb7936e1a5"
'ext4))
(type "ext4")) %base-file-systems)))